package com.ruoyi.pingjiao.mapper;

import java.util.List;
import java.util.Map;

import com.ruoyi.pingjiao.domain.EvalutionActivity;


/**
 * 评教活动管理Mapper接口
 *
 * @author 胡浩鹏
 * @date 2022-10-22
 */
public interface EvalutionActivityMapper
{
    /**
     * 查询评教活动管理
     *
     * @param evalutionActivityId 评教活动管理主键
     * @return 评教活动管理
     */
    public EvalutionActivity selectEvalutionActivityByEvalutionActivityId(Long evalutionActivityId);
    public List<EvalutionActivity> selectEvalutionActivityByStudentId(Map map);//传studentId与status

    /**
     * 查询评教活动管理列表
     *
     * @param evalutionActivity 评教活动管理
     * @return 评教活动管理集合
     */
    public List<EvalutionActivity> selectEvalutionActivityList(EvalutionActivity evalutionActivity);
    public List<EvalutionActivity> selectEvalutionActivityList2(EvalutionActivity evalutionActivity);

    /**
     * 新增评教活动管理
     *
     * @param evalutionActivity 评教活动管理
     * @return 结果
     */
    public int insertEvalutionActivity(EvalutionActivity evalutionActivity);

    /**
     * 修改评教活动管理
     *
     * @param evalutionActivity 评教活动管理
     * @return 结果
     */
    public int updateEvalutionActivity(EvalutionActivity evalutionActivity);

    /**
     * 修改评教活动管理状态
     *
     *  评教活动管理
     * @return 结果
     */
    public int updateEvalutionActivityStatusTo3();

    public int updateEvalutionActivityStatusTo4();

    /**
     * 统计
     *
     *  评教活动管理
     * @return 结果
     */
    public int statsEvaluationScoresOfTeacher();



    /**
     * 删除评教活动管理
     *
     * @param evalutionActivityId 评教活动管理主键
     * @return 结果
     */
    public int deleteEvalutionActivityByEvalutionActivityId(Long evalutionActivityId);

    /**
     * 批量删除评教活动管理
     *
     * @param evalutionActivityIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteEvalutionActivityByEvalutionActivityIds(Long[] evalutionActivityIds);

    /**
     * 统计没有被评价的教师数量
     * @author hpf
     * @return
     */
    public  int statNumberOfNoEvaluatedTeacher();

    /**
     * 统计是否存在没有结束的同一类型的评价活动
     * @author  hpf
     */
    public  int countHasSameCourseTypeNoOver(String courseType);


    List<String> selectTermByStudentIdAndStatus(Map map);

    List<EvalutionActivity> selectActivityPaperByTerm(Map map);
}
